home *** CD-ROM | disk | FTP | other *** search
/ Visual Basic 4 Database How-To / Visual Basic 4 Database - How-to (The Waite Group)(1995).iso / exclusiv.fr_ / exclusiv.fr
Text File  |  1995-07-06  |  5KB  |  178 lines

  1. VERSION 4.00
  2. Begin VB.Form Form1 
  3.    BackColor       =   &H00C0C0C0&
  4.    Caption         =   "Non-User"
  5.    ClientHeight    =   3150
  6.    ClientLeft      =   2265
  7.    ClientTop       =   1680
  8.    ClientWidth     =   3405
  9.    BeginProperty Font 
  10.       name            =   "MS Sans Serif"
  11.       charset         =   0
  12.       weight          =   700
  13.       size            =   8.25
  14.       underline       =   0   'False
  15.       italic          =   0   'False
  16.       strikethrough   =   0   'False
  17.    EndProperty
  18.    Height          =   3555
  19.    Left            =   2205
  20.    LinkTopic       =   "Form1"
  21.    ScaleHeight     =   3150
  22.    ScaleWidth      =   3405
  23.    Top             =   1335
  24.    Width           =   3525
  25.    Begin VB.CommandButton cmdExit 
  26.       Cancel          =   -1  'True
  27.       Caption         =   "E&xit"
  28.       Height          =   375
  29.       Left            =   540
  30.       TabIndex        =   5
  31.       Top             =   2340
  32.       Width           =   2295
  33.    End
  34.    Begin VB.CommandButton cmdClose 
  35.       Caption         =   "&Close Database"
  36.       Enabled         =   0   'False
  37.       Height          =   375
  38.       Left            =   540
  39.       TabIndex        =   4
  40.       Top             =   1860
  41.       Width           =   2295
  42.    End
  43.    Begin VB.CommandButton cmdOpen 
  44.       Caption         =   "&Open Database"
  45.       Height          =   375
  46.       Left            =   540
  47.       TabIndex        =   3
  48.       Top             =   1380
  49.       Width           =   2295
  50.    End
  51.    Begin VB.Frame Frame1 
  52.       BackColor       =   &H00C0C0C0&
  53.       Caption         =   "Data Sharing"
  54.       Height          =   915
  55.       Left            =   480
  56.       TabIndex        =   0
  57.       Top             =   300
  58.       Width           =   2415
  59.       Begin VB.OptionButton optShared 
  60.          BackColor       =   &H00C0C0C0&
  61.          Caption         =   "Open Shared"
  62.          Height          =   195
  63.          Left            =   180
  64.          TabIndex        =   2
  65.          Top             =   600
  66.          Width           =   1935
  67.       End
  68.       Begin VB.OptionButton optExclusive 
  69.          BackColor       =   &H00C0C0C0&
  70.          Caption         =   "Open Exclusive"
  71.          Height          =   195
  72.          Left            =   180
  73.          TabIndex        =   1
  74.          Top             =   300
  75.          Value           =   -1  'True
  76.          Width           =   1995
  77.       End
  78.    End
  79. End
  80. Attribute VB_Name = "Form1"
  81. Attribute VB_Creatable = False
  82. Attribute VB_Exposed = False
  83. Option Explicit
  84.  
  85. ' Declare the database at the form level; several routines need to access
  86. ' the variable to work with the database.
  87.  
  88. Dim db As DATABASE
  89. Private Sub cmdOpen_Click()
  90.     Dim dbName As String
  91.  
  92.     ' Set up the error handler.
  93.     
  94.     On Error GoTo OpenError
  95.     
  96.     ' Open the database. If the value of optExclusive is True, open the
  97.     ' database for exclusive access. If optExclusive is False, open it
  98.     ' for shared access.
  99.     dbName = BiblioPath()       ' BiblioPath is a function in READINI.BAS
  100.     Set db = DBEngine.Workspaces(0).OpenDatabase(dbName)
  101.     
  102.     ' Set the form caption to indicate that the database is opened and show
  103.     ' whether it's opened exclusively or for shared access.
  104.     
  105.     Form1.Caption = IIf(optShared, "Sharing User", "Exclusive User")
  106.     
  107.     ' Toggle the open and close buttons so that the user can close the
  108.     ' database.
  109.     
  110.     cmdClose.Enabled = True
  111.     cmdOpen.Enabled = False
  112.  
  113. Exit Sub
  114.  
  115. OpenError:
  116.     Dim msg As String
  117.     
  118.     If Err = 3356 Then
  119.     
  120.         ' Error 3356 occure when the user tries to open a database that's
  121.         ' already open or when the user tries to open exclusively a database
  122.         ' that 's already open exclusive or shared.
  123.         ' Display an error message informing the user why the database cannot
  124.         ' be opened.
  125.         
  126.         If optShared Then
  127.         
  128.             ' The user tried to open the database shared. Someone else
  129.             ' must have it open exclusively.
  130.         
  131.             msg = "Another user has the database opened for exclusive use."
  132.             msg = msg & " You cannot open it right now."
  133.             
  134.         Else
  135.             
  136.             ' The user tried to open the database exclusively. It's already
  137.             ' open for another user.
  138.             
  139.             msg = "Another user has the database open."
  140.             msg = msg & " You cannot open it exclusively right now."
  141.             
  142.         End If
  143.         
  144.     Else
  145.     
  146.        ' For all other errors, just display Visual Basic's message.
  147.        
  148.         msg = Error(Err)
  149.         
  150.     End If
  151.     
  152.     MsgBox msg, vbExclamation
  153.  
  154. Exit Sub
  155.  
  156. End Sub
  157. Private Sub cmdClose_Click()
  158.  
  159.     ' Close the database.
  160.  
  161.     db.Close
  162.     
  163.     ' Toggle the command buttons so the user can reopen the database.
  164.     
  165.     cmdOpen.Enabled = True
  166.     cmdClose.Enabled = False
  167.     
  168.     ' Change the status bar to indicate that no database is open.
  169.     
  170.     Form1.Caption = "Non-User"
  171.     
  172. End Sub
  173.  
  174. Private Sub cmdExit_Click()
  175.     End
  176. End Sub
  177.  
  178.